/**
 * @param {number[]} nums1
 * @param {number[]} nums2
 * @return {number[]}
 */
var intersection = function(nums1, nums2) {
  let result = new Set()
  nums1.forEach(item => {
    if (nums2.indexOf(item) !== -1) result.add(item)
  })
  return [...result]
}

console.log(intersection([1, 2, 3, 4, 5, 6], [2, 2, 4, 1, 43]))

/**
 * 更优解
 * 对2个数组都进行 set 处理
 * 判断数据是否存在，使用  set.has() 进行判断
 */
